Video data typically has an immense amount of data. Accordingly, a device treating video data encodes video data to compress the video data when transmitting the video data to a different device or storing the video data in a storage device. Advanced Video Coding (MPEG-4 AVC|ITU-T H.264) and High Efficiency Video Coding (HEVC|ITU-T H.265) are being developed as representative standards for video coding (see Non-Patent Document 1 for example).
These coding standards divide a coding-target picture into blocks. For each coding-target block, a prediction block is generated from an already-encoded different picture or an already-encoded region of a coding-target picture, the difference is encoded between the coding-target block and the prediction block, and thereby the redundancy is reduced.
Coding standards such as this employ the inter-prediction coding method, in which a reference picture (also referred to as a local-decoded picture) obtained by decoding an already-encoded different picture is used for generating a prediction block. In the inter-prediction coding method, the region that resembles a coding-target block the most is obtained as a reference block from the reference picture to compensate for motion between pictures. On the basis of that reference block, a prediction block is generated. The inter-prediction coding method can typically achieve higher compression efficiency than that achieved by the intra-prediction coding method, which generates a prediction block from an encoded region in a coding-target picture.
The inter-prediction coding method includes a bidirectional prediction mode (bi-predictive mode), in which two reference blocks are used for generating one prediction block, and a unidirectional prediction mode, in which one reference block is used for generating a prediction block. One of the two reference blocks used in a bidirectional prediction mode may be included in a reference picture that is earlier than the coding-target picture in the order of display time, and the other reference block may be included in a reference picture that is later than the coding-target picture in the order of display time. Both of the two reference pictures may be included in different reference pictures that are earlier than the coding-target picture in the order of display time or may be included in different two reference pictures that are later than the coding-target picture in the order of display time. Using a bidirectional prediction mode reduces the influence of image-pickup noise and coding noise involved in a reference block, enabling the video coding device to generate a prediction block with higher accuracy. This results in increased coding efficiency. A unidirectional prediction mode, meanwhile, enables the video coding device to generate a prediction block by using one of the two reference blocks used in a bidirectional prediction mode. Such types of prediction are referred to as L0 prediction and L1 prediction in for example HEVC. L0 prediction and L1 prediction are performed when only one reference picture exists, when one of the reference pictures does not have a region that resembles the coding-target block and that is to serve as a reference block, or in other cases.
Coding standards such as MPEG-4 AVC or HEVC apply these inter-prediction coding methods efficiently, and introduce three types of picture: I picture, P picture, and B picture in order to suppress the propagation of an error caused by the coding between pictures. An I picture is a picture that is encoded by only using the intra-prediction coding method from between the inter-prediction coding method and the intra-prediction coding method. A P picture is a picture that is encoded by using a unidirectional prediction mode (L0/L1 prediction) or the intra-prediction coding method. A B picture is a picture that is encoded by using the intra-prediction coding method, a unidirectional prediction mode, or a bidirectional prediction mode. Note that a different coding method and a different prediction mode can be selected for each block from among applicable coding methods and prediction modes for a P picture and a B picture.
Also, when the video data is a color video, the value of a pixel in each picture is expressed by for example a set of a luminance component and two color-difference components. Accordingly, when the video coding device encodes video data, the video coding device encodes for example not only the luminance component but also each of the two color-difference components. In such a situation, the luminance component and the two color-difference components typically have correlation. In view of this, HEVC specifies that a motion vector calculated from a luminance component can be applied to each of the two color-difference components for a block of interest when a video coding device performs inter-prediction coding on the luminance component and each of the two color-difference components. HEVC also specifies that a mode of dividing a block determined on the basis of a luminance component may be applied to each of the two color-difference components (see for example section 8.5.3.2.9 of Non-Patent Document 1).    Non-Patent Document 1: ITU-T Recommendation H.265|ISO/IEC 23008-2 “High Efficiency Video Coding”, April 2013